<?php
require_once("conexion.php");
require_once("template.php");
require_once("validacion.php");

function pago_insertar($id_presupuesto,$fecha,$monto,$observaciones){
// Validaciones
	$monto=(int)$monto;
	if (! is_numerico($id_presupuesto))
	   $error="El id de presupuesto no es un dígito";
	elseif (! contains_valid_date($fecha))
	   $error="La fecha ingresada es incorrecta. El formato debe ser aaaa/mm/dd. Por ejemplo 2009/10/22.";
	elseif (! is_numerico($monto))
	   $error="El monto ingresado es incorrecto";
	else
	   $error="";

// Fin validaciones
	$objResponse = new xajaxResponse();
	if ($error == ""){
	  global $conexion;
	  $conexion->Execute("INSERT INTO pagos (id_presupuesto,fecha_pago,monto,observaciones) VALUES ('$id_presupuesto','$fecha','$monto','$observaciones')");
	  $objResponse->script("xajax_pago_listado(); alert('Pago cargado correctamente!,$error')");
	}else
	    $objResponse->script("alert('$error')");
	  return $objResponse;
}


function pago_nuevo($id_pago=False){
	global $conexion;
	set_file("pago_nuevo","pago_nuevo.html");

	if ($id_pago){
	  pago_modificar($id_pago);
	}
	$resultado=$conexion->GetRow("select max(id_pago) as ultimo from pagos");
	if ($resultado){
	  $nro_pago=$resultado['ultimo'];
	  $nro_pago++;
	}else	
	  $nro_pago=0;
	
	$presupuestos=$conexion->Execute("select p.id_presupuesto as presupuesto,p.fecha_presu as fecha,c.nombre as nombre from presupuesto p, cliente c where p.id_cliente=c.id_cliente");
	foreach ($presupuestos as $presupuesto){
	    set_var("pago_input_presupuesto_id",$presupuesto['presupuesto']);
	    $presupuestoNombre=$presupuesto['nombre']."-".$presupuesto['fecha'];
	    set_var("pago_input_presupuesto",$presupuestoNombre);
	    parse("bucle_pago_listado_presupuestos");
	}
	$today = date("Y/m/d");
	set_var("pago_input_nro",$nro_pago);
	set_var("pago_input_fecha",$today);
	set_var("pago_input_monto",'');
	set_var("pago_input_observaciones",'');
	set_var("pago_nuevo_accion","Agregar");
	$accion="xajax_pago_insertar(
	document.getElementById('pago_input_presupuesto_id').value,
	document.getElementById('pago_input_fecha').value,
	document.getElementById('pago_input_monto').value,
	document.getElementById('pago_input_observaciones').value
	)";
	set_var("pago_nuevo_onclick",$accion);
	$respuesta = gparse("pago_nuevo");
	$objResponse = new xajaxResponse();
	$objResponse->assign("contenedor", "innerHTML", $respuesta);
	return $objResponse;
}

function pago_eliminar($id){
   global $conexion;
   $id = (int) $id;
   $conexion->Execute("delete from pagos where id_pago = $id");
   $objResponse = new xajaxResponse();
   $objResponse->script("xajax_pago_listado(); alert('Pago borrado correctamente!')");
    return $objResponse;
}

function pago_listado(){
	global $conexion; 
	set_file("pago_listado","pago_listado.html");
	$res= $conexion->Execute("select * from pagos");
	if ($res->RowCount() > 0){
		foreach ($res as $fila){
			set_var("pago_id",$fila['id_pago']);	
			set_var("pago_id_presupuesto",$fila['id_presupuesto']);	
			set_var("pago_fecha",$fila['fecha_pago']);	
			set_var("pago_monto",$fila['monto']);	
			set_var("pago_observaciones",$fila['observaciones']);
			parse("bucle_listado_pagos");
		}
		$respuesta = gparse("pago_listado");
	}else{
		
		$respuesta="<br><hr><table>&nbsp No hay registros &nbsp</table><hr>";
	}
	
	$objResponse = new xajaxResponse();
 	$objResponse->assign("contenedor", "innerHTML", $respuesta);
	return $objResponse;
}
require("pago.common.php");
$xajax->processRequest();
?>